報錯的用法:
首先我們要import UserError跟_
from odoo.exceptions import UserError
from odoo.tools.translate import _
這邊這段程式碼的用意,主要確認借書狀態是否可以更新,如果不行將回傳Error給使用者,其中_
在未來翻譯多國語言的時候可以用到。
@api.model
def change_state(self, new_state):
for book in self:
if book.is_allowed_transition(book.state, new_state):
book.state = new_state
else:
msg = _('Moving from %s to %s is not allowed') % (book.state, new_state)
raise UserError(msg)
這些是其他常用報錯的字段:
1. ValidationError -沒有滿足constrains條件報錯
2. AccessError -用戶不是群組內的使用者,不得訪問
3. RedirectError -報出Error後,指向指定View當中
今天報錯的使用種類就先介紹到這邊